Throttle control systems and methods for cylinder activation and deactivation

ABSTRACT

An engine control system for a vehicle includes a target torque module that determines a target torque output of an engine based on at least one driver input. A target air per cylinder (APC) module determines a target APC for the engine based on the target torque. A target mass airflow (MAF) module determines a target MAF through a throttle valve of the engine based on the target APC, a number of activated cylinders of the engine, and a total number of cylinders of the engine. A throttle control module determines a target throttle opening based on the target MAF and controls opening of the throttle valve based on the target throttle opening.

FIELD

The present disclosure relates to internal combustion engines and more particularly to engine control systems and methods for vehicles.

BACKGROUND

The background description provided here is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.

Internal combustion engines combust an air and fuel mixture within cylinders to drive pistons, which produces drive torque. Air flow into the engine is regulated via a throttle. More specifically, the throttle adjusts throttle area, which increases or decreases air flow into the engine. As the throttle area increases, the air flow into the engine increases. A fuel control system adjusts the rate that fuel is injected to provide a desired air/fuel mixture to the cylinders and/or to achieve a desired torque output. Increasing the amount of air and fuel provided to the cylinders increases the torque output of the engine.

In spark-ignition engines, spark initiates combustion of an air/fuel mixture provided to the cylinders. In compression-ignition engines, compression in the cylinders combusts the air/fuel mixture provided to the cylinders. Spark timing and air flow may be the primary mechanisms for adjusting the torque output of spark-ignition engines, while fuel flow may be the primary mechanism for adjusting the torque output of compression-ignition engines.

Engine control systems have been developed to control engine output torque to achieve a desired torque. Traditional engine control systems, however, do not control the engine output torque as accurately as desired. Further, traditional engine control systems do not provide a rapid response to control signals or coordinate engine torque control among various devices that affect the engine output torque.

SUMMARY

An engine control system for a vehicle includes a target torque module that determines a target torque output of an engine based on at least one driver input. A target air per cylinder (APC) module determines a target APC for the engine based on the target torque. A target mass airflow (MAF) module determines a target MAF through a throttle valve of the engine based on the target APC, a number of activated cylinders of the engine, and a total number of cylinders of the engine. A throttle control module determines a target throttle opening based on the target MAF and controls opening of the throttle valve based on the target throttle opening.

In further features, the target MAF module determines the target MAF further based on an APC of the engine, a temperature of air within an intake manifold of the engine, a volumetric efficiency of the engine, and a predetermined response time value.

In still further features, the target MAF module determines the target MAF using one of a function and a mapping that relates the target APC, the number of activated cylinders, the total number of cylinders, the APC, the temperature, the volumetric efficiency, and the predetermined response time value to the target MAF.

In yet further features, a second target MAF module determines a second target MAF through the throttle valve based on the target APC, and a selection module selects one of the target MAF and the second target MAF and sets a selected target MAF based on the selected one of the target MAF and the second target MAF. The throttle control module determines the target throttle opening based on the selected target MAF.

In further features, the selection module selects the target MAF when at least one cylinder of the engine is transitioned from activated to deactivated.

In still further features, the selection module selects the target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from activated to deactivated.

In yet further features, the selection module selects the target MAF when at least one cylinder of the engine is transitioned from deactivated to activated.

In further features, the selection module selects the target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from deactivated to activated.

In still further features, the selection module selects the second target MAF when zero cylinders of the engine are transitioned from deactivated to activated and zero cylinders of the engine are transitioned from activated to deactivated.

In yet further features, the throttle control module determines the target throttle opening further based on a target intake manifold pressure.

An engine control method includes: determining a target torque output of an engine based on at least one driver input; determining a target air per cylinder (APC) for the engine based on the target torque; determining a target mass airflow (MAF) through a throttle valve of the engine based on the target APC, a number of activated cylinders of the engine, and a total number of cylinders of the engine; determining a target throttle opening based on the target MAF; and controlling opening of the throttle valve based on the target throttle opening.

In further features, the engine control method further includes determining the target MAF further based on an APC of the engine, a temperature of air within an intake manifold of the engine, a volumetric efficiency of the engine, and a predetermined response time value.

In still further features, the engine control method further includes determining the target MAF using one of a function and a mapping that relates the target APC, the number of activated cylinders, the total number of cylinders, the APC, the temperature, the volumetric efficiency, and the predetermined response time value to the target MAF.

In yet further features, the engine control method further includes: determining a second target MAF through the throttle valve based on the target APC; selecting one of the target MAF and the second target MAF; setting a selected target MAF based on the selected one of the target MAF and the second target MAF; and determining the target throttle opening based on the selected target MAF.

In further features, the engine control method further includes selecting the target MAF when at least one cylinder of the engine is transitioned from activated to deactivated.

In still further features, the engine control method further includes selecting the target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from activated to deactivated.

In yet further features, the engine control method further includes selecting the target MAF when at least one cylinder of the engine is transitioned from deactivated to activated.

In further features, the engine control method further includes selecting the target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from deactivated to activated.

In still further features, the engine control method further includes selecting the second target MAF when zero cylinders of the engine are transitioned from deactivated to activated and zero cylinders of the engine are transitioned from activated to deactivated.

In yet further features, the engine control method further includes determining the target throttle opening further based on a target intake manifold pressure.

Further areas of applicability of the present disclosure will become apparent from the detailed description, the claims and the drawings. The detailed description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become more fully understood from the detailed description and the accompanying drawings, wherein:

FIG. 1 is a functional block diagram of an example engine system according to the present disclosure;

FIG. 2 is a functional block diagram of an example engine control system according to the present disclosure;

FIG. 3 is a functional block diagram of an example air control module according to the present disclosure;

FIG. 4 is a functional block diagram of an example target air per cylinder (APC) module according to the present disclosure; and

FIG. 5 includes a flowchart depicting an example method of controlling a throttle valve according to the present disclosure.

In the drawings, reference numbers may be reused to identify similar and/or identical elements.

DETAILED DESCRIPTION

Internal combustion engines combust an air and fuel mixture within cylinders to generate torque. Under some circumstances, an engine control module (ECM) may deactivate one or more cylinders of the engine. The ECM may deactivate one or more cylinders, for example, to decrease fuel consumption when the engine can achieve a torque request using less than all of the cylinders of the engine. The ECM may activate one or more deactivated cylinders, for example, when the torque request increases.

Airflow into the engine may vary when one or more cylinders are activated or deactivated. The ECM of the present disclosure determines a target mass air flowrate (MAF) through a throttle valve for use when one or more cylinders are activated or deactivated. The ECM controls opening of a throttle valve of the engine based on the target MAF. Controlling the throttle valve based on the target MAF may provide smoother air per cylinder (APC) conditions and, therefore smoother engine torque output, while the cylinder(s) are activated or deactivated.

Referring now to FIG. 1, a functional block diagram of an example engine system 100 is presented. The engine system 100 includes an engine 102 that combusts an air/fuel mixture to produce drive torque for a vehicle based on driver input from a driver input module 104. Air is drawn into an intake manifold 110 through a throttle valve 112. For example only, the throttle valve 112 may include a butterfly valve having a rotatable blade. An engine control module (ECM) 114 controls a throttle actuator module 116, which regulates opening of the throttle valve 112 to control the amount of air drawn into the intake manifold 110.

Air from the intake manifold 110 is drawn into cylinders of the engine 102. While the engine 102 may include multiple cylinders, for illustration purposes a single representative cylinder 118 is shown. For example only, the engine 102 may include 2, 3, 4, 5, 6, 8, 10, and/or 12 cylinders. The ECM 114 may instruct a cylinder actuator module 120 to selectively deactivate some of the cylinders, which may improve fuel economy under certain engine operating conditions.

The engine 102 may operate using a four-stroke cycle. The four strokes, described below, may be referred to as the intake stroke, the compression stroke, the combustion stroke, and the exhaust stroke. During each revolution of a crankshaft (not shown), two of the four strokes occur within the cylinder 118. Therefore, two crankshaft revolutions are necessary for the cylinder 118 to experience all four of the strokes.

During the intake stroke, air from the intake manifold 110 is drawn into the cylinder 118 through an intake valve 122. The ECM 114 controls a fuel actuator module 124, which regulates fuel injection to achieve a target air/fuel ratio. Fuel may be injected into the intake manifold 110 at a central location or at multiple locations, such as near the intake valve 122 of each of the cylinders. In various implementations (not shown), fuel may be injected directly into the cylinders or into mixing chambers associated with the cylinders. The fuel actuator module 124 may halt injection of fuel to cylinders that are deactivated.

The injected fuel mixes with air and creates an air/fuel mixture in the cylinder 118. During the compression stroke, a piston (not shown) within the cylinder 118 compresses the air/fuel mixture. While not shown, the engine 102 may be a compression-ignition engine, in which case compression within the cylinder 118 ignites the air/fuel mixture. Alternatively, as shown, the engine 102 may be a spark-ignition engine, in which case a spark actuator module 126 energizes a spark plug 128 in the cylinder 118 based on a signal from the ECM 114, which ignites the air/fuel mixture. The timing of the spark may be specified relative to the time when the piston is at its topmost position, referred to as top dead center (TDC).

The spark actuator module 126 may be controlled by a timing signal specifying how far before or after TDC to generate the spark. Because piston position is directly related to crankshaft rotation, operation of the spark actuator module 126 may be synchronized with crankshaft angle. The spark actuator module 126 may halt provision of spark to deactivated cylinders. Generating spark may be referred to as a firing event. The spark actuator module 126 may have the ability to vary the timing of the spark for each firing event. The spark actuator module 126 may vary the spark timing for a next firing event when the spark timing is changed between a last firing event and the next firing event.

During the combustion stroke, the combustion of the air/fuel mixture drives the piston away from TDC, thereby driving the crankshaft. The combustion stroke may be defined as the time between the piston reaching TDC and the time at which the piston reaches bottom dead center (BDC). During the exhaust stroke, the piston begins moving away from BDC and expels the byproducts of combustion through an exhaust valve 130. The byproducts of combustion are exhausted from the vehicle via an exhaust system 134.

The intake valve 122 may be controlled by an intake camshaft 140, while the exhaust valve 130 may be controlled by an exhaust camshaft 142. In various implementations, multiple intake camshafts (including the intake camshaft 140) may control multiple intake valves (including the intake valve 122) for the cylinder 118 and/or may control the intake valves (including the intake valve 122) of multiple banks of cylinders (including the cylinder 118). Similarly, multiple exhaust camshafts (including the exhaust camshaft 142) may control multiple exhaust valves for the cylinder 118 and/or may control exhaust valves (including the exhaust valve 130) for multiple banks of cylinders (including the cylinder 118). The cylinder actuator module 120 may deactivate the cylinder 118 by disabling opening of the intake valve 122 and/or the exhaust valve 130. In various other implementations, the intake valve 122 and/or the exhaust valve 130 may be controlled by devices other than camshafts, such as camless valve actuators.

The time when the intake valve 122 is opened may be varied with respect to piston TDC by an intake cam phaser 148. The time when the exhaust valve 130 is opened may be varied with respect to piston TDC by an exhaust cam phaser 150. A phaser actuator module 158 may control the intake cam phaser 148 and the exhaust cam phaser 150 based on signals from the ECM 114. When implemented, variable valve lift (not shown) may also be controlled by the phaser actuator module 158.

The engine system 100 may include a boost device that provides pressurized air to the intake manifold 110. For example, FIG. 1 shows a turbocharger including a hot turbine 160-1 that is powered by hot exhaust gases flowing through the exhaust system 134. The turbocharger also includes a cold air compressor 160-2 that is driven by the turbine 160-1. The compressor 160-2 compresses air leading into the throttle valve 112. In various implementations, a supercharger (not shown), driven by the crankshaft, may compress air from the throttle valve 112 and deliver the compressed air to the intake manifold 110.

A wastegate 162 may allow exhaust to bypass the turbine 160-1, thereby reducing the boost (the amount of intake air compression) provided by the turbocharger. The ECM 114 may control the turbocharger via a boost actuator module 164. The boost actuator module 164 may modulate the boost of the turbocharger by controlling opening of the wastegate 162. In various implementations, multiple turbochargers may be controlled by the boost actuator module 164. The turbocharger may have variable geometry, which may be controlled by the boost actuator module 164.

An intercooler (not shown) may dissipate some of the heat contained in the compressed air charge, which is generated as the air is compressed. The compressed air charge may also have absorbed heat from components of the exhaust system 134. Although shown separated for purposes of illustration, the turbine 160-1 and the compressor 160-2 may be attached to each other, placing intake air in close proximity to hot exhaust.

The engine system 100 may include an exhaust gas recirculation (EGR) valve 170, which selectively redirects exhaust gas back to the intake manifold 110. The EGR valve 170 may be located upstream of the turbocharger's turbine 160-1. The EGR valve 170 may be controlled by an EGR actuator module 172.

The engine system 100 may measure the rotational speed of the crankshaft in revolutions per minute (RPM) using an RPM sensor 180. The speed of the crankshaft may be referred to as an engine speed. The temperature of the engine coolant may be measured using an engine coolant temperature (ECT) sensor 182. The ECT sensor 182 may be located within the engine 102 or at other locations where the coolant is circulated, such as a radiator (not shown).

The pressure within the intake manifold 110 may be measured using a manifold absolute pressure (MAP) sensor 184. In various implementations, engine vacuum, which is the difference between ambient air pressure and the pressure within the intake manifold 110, may be measured. The mass flow rate of air flowing into the intake manifold 110 may be measured using a mass air flow (MAF) sensor 186. In various implementations, the MAF sensor 186 may be located in a housing that also includes the throttle valve 112.

The throttle actuator module 116 may monitor the position of the throttle valve 112 using one or more throttle position sensors (TPS) 190. The ambient temperature of air being drawn into the engine 102 may be measured using an intake air temperature (IAT) sensor 192. The engine system 100 may also include one or more other sensors. The ECM 114 may use signals from the sensors to make control decisions for the engine system 100.

The ECM 114 may communicate with a transmission control module 194 to coordinate shifting gears in a transmission (not shown). For example, the ECM 114 may reduce engine torque during a gear shift. The ECM 114 may communicate with a hybrid control module 196 to coordinate operation of the engine 102 and an electric motor 198.

The electric motor 198 may also function as a generator, and may be used to produce electrical energy for use by vehicle electrical systems and/or for storage in a battery. In various implementations, various functions of the ECM 114, the transmission control module 194, and the hybrid control module 196 may be integrated into one or more modules.

Each system that varies an engine parameter may be referred to as an actuator. Each system receives a target actuator value. For example, the throttle actuator module 116 may be referred to as an actuator, and a target throttle opening (e.g., area) may be referred to as the target actuator value. In the example of FIG. 1, the throttle actuator module 116 achieves the target throttle opening by adjusting an angle of the blade of the throttle valve 112.

Similarly, the spark actuator module 126 may be referred to as an actuator, while the corresponding target actuator value may be a target spark timing relative to piston TDC. Other actuators may include the cylinder actuator module 120, the fuel actuator module 124, the phaser actuator module 158, the boost actuator module 164, and the EGR actuator module 172. For these actuators, the target actuator values may include target number of activated cylinders, target fueling parameters, target intake and exhaust cam phaser angles, target wastegate duty cycle, and target EGR valve opening area, respectively. The ECM 114 may generate the target actuator values to cause the engine 102 to generate a target engine output torque.

Referring now to FIG. 2, a functional block diagram of an example engine control system is presented. An example implementation of the ECM 114 includes a driver torque module 202, an axle torque arbitration module 204, and a propulsion torque arbitration module 206. The ECM 114 may include a hybrid optimization module 208. The ECM 114 also includes a reserves/loads module 220, a torque requesting module 224, an air control module 228, a spark control module 232, a cylinder control module 236, and a fuel control module 240. The ECM 114 also includes an air per cylinder (APC) torque estimation module 244, a MAP torque estimation module 246, a boost control module 248, a phaser control module 252, and an EGR control module 253.

The driver torque module 202 may determine a driver torque request 254 based on a driver input 255 from the driver input module 104. The driver input 255 may be based on, for example, a position of an accelerator pedal and a position of a brake pedal. The driver input 255 may also be based on cruise control, which may be an adaptive cruise control system that varies vehicle speed to maintain a predetermined following distance. The driver torque module 202 may store one or more mappings of accelerator pedal position to target torque and may determine the driver torque request 254 based on a selected one of the mappings.

An axle torque arbitration module 204 arbitrates between the driver torque request 254 and other axle torque requests 256. Axle torque (torque at the wheels) may be produced by various sources including an engine and/or an electric motor. For example, the axle torque requests 256 may include a torque reduction requested by a traction control system when positive wheel slip is detected. Positive wheel slip occurs when axle torque overcomes friction between the wheels and the road surface, and the wheels begin to slip against the road surface. The axle torque requests 256 may also include a torque increase request to counteract negative wheel slip, where a tire of the vehicle slips in the other direction with respect to the road surface because the axle torque is negative.

The axle torque requests 256 may also include brake management requests and vehicle over-speed torque requests. Brake management requests may reduce axle torque to ensure that the axle torque does not exceed the ability of the brakes to hold the vehicle when the vehicle is stopped. Vehicle over-speed torque requests may reduce the axle torque to prevent the vehicle from exceeding a predetermined speed. The axle torque requests 256 may also be generated by vehicle stability control systems.

The axle torque arbitration module 204 outputs a predicted torque request 257 and an immediate torque request 258 based on the results of arbitrating between the received torque requests 254 and 256. As described below, the predicted and immediate torque requests 257 and 258 from the axle torque arbitration module 204 may selectively be adjusted by other modules of the ECM 114 before being used to control the actuators of the engine system 100.

In general terms, the immediate torque request 258 is the amount of currently target axle torque, while the predicted torque request 257 is the amount of axle torque that may be needed on short notice. The ECM 114 controls the engine system 100 to produce an axle torque equal to the immediate torque request 258. However, different combinations of actuator values may result in the same axle torque. The ECM 114 may therefore adjust the target actuator values to enable a faster transition to the predicted torque request 257, while still maintaining the axle torque at the immediate torque request 258.

In various implementations, the predicted torque request 257 may be set based on the driver torque request 254. The immediate torque request 258 may be set to less than the predicted torque request 257 under some circumstances, such as when the driver torque request 254 is causing wheel slip on an icy surface. In such a case, a traction control system (not shown) may request a reduction via the immediate torque request 258, and the ECM 114 reduces the engine torque output to the immediate torque request 258. However, the ECM 114 performs the reduction so the engine system 100 can quickly resume producing the predicted torque request 257 once the wheel slip stops.

In general terms, the difference between the immediate torque request 258 and the (generally higher) predicted torque request 257 can be referred to as a torque reserve. The torque reserve may represent the amount of additional torque (above the immediate torque request 258) that the engine system 100 can begin to produce with minimal delay. Fast engine actuators are used to increase or decrease current axle torque with minimal delay. As described in more detail below, fast engine actuators are defined in contrast with slow engine actuators.

In various implementations, fast engine actuators are capable of varying axle torque within a range, where the range is established by the slow engine actuators. The upper limit of the range is the predicted torque request 257, while the lower limit of the range is limited by the torque (varying) capacity of the fast actuators. For example only, fast actuators may only be able to reduce axle torque by a first amount, where the first amount is a measure of the torque capacity of the fast actuators. The first amount may vary based on engine operating conditions set by the slow engine actuators.

When the immediate torque request 258 is within the range, fast engine actuators can be controlled to cause the axle torque to be equal to the immediate torque request 258. When the ECM 114 requests the predicted torque request 257 to be output, the fast engine actuators can be controlled to vary the axle torque to the top of the range, which is the predicted torque request 257.

In general terms, fast engine actuators can change the axle torque more quickly than slow engine actuators. Slow actuators may respond more slowly to changes in their respective actuator values than fast actuators do. For example, a slow actuator may include mechanical components that require time to move from one position to another in response to a change in actuator value. A slow actuator may also be characterized by the amount of time it takes for the axle torque to begin to change once the slow actuator begins to implement the changed actuator value. Generally, this amount of time will be longer for slow actuators than for fast actuators. In addition, even after beginning to change, the axle torque may take longer to fully respond to a change in a slow actuator.

For example only, the ECM 114 may set actuator values for slow actuators to values that would enable the engine system 100 to produce the predicted torque request 257 if the fast actuators were set to appropriate values. Meanwhile, the ECM 114 may set target actuator values for fast actuators to values that, given the slow actuator values, cause the engine system 100 to produce the immediate torque request 258 instead of the predicted torque request 257.

The fast actuators therefore cause the engine system 100 to produce the immediate torque request 258. When the ECM 114 decides to transition the axle torque from the immediate torque request 258 to the predicted torque request 257, the ECM 114 changes the target actuator values for one or more fast actuators to values that correspond to the predicted torque request 257. Because the target actuator values for the slow actuators have already been set based on the predicted torque request 257, the engine system 100 is able to produce the predicted torque request 257 after only the (minimal) delay imposed by the fast actuators. In other words, the longer delay that would otherwise result from changing axle torque using slow actuators is avoided.

For example only, in a spark-ignition engine, spark timing may be a fast actuator value, while throttle opening may be a slow actuator value. Spark-ignition engines may combust fuels including, for example, gasoline and ethanol, by applying a spark. By contrast, in a compression-ignition engine, fuel flow may be a fast actuator value, while throttle opening may be used as an actuator value for engine characteristics other than torque. Compression-ignition engines may combust fuels including, for example, diesel fuel, via compression.

When the engine 102 is a spark-ignition engine, the spark actuator module 126 may be a fast actuator and the throttle actuator module 116 may be a slow actuator. After receiving a new target actuator value, the spark actuator module 126 may be able to change spark timing for the following firing event. When the spark timing (also called spark advance) for a firing event is set to an optimum value, a maximum amount of torque may be produced in the combustion stroke immediately following the firing event. However, a spark timing deviating from the optimum value may reduce the amount of torque produced in the combustion stroke. Therefore, the spark actuator module 126 may be able to vary engine output torque as soon as the next firing event occurs by varying spark timing. For example only, a table of optimum spark timings corresponding to different engine operating conditions may be determined during a calibration phase of vehicle design, and the optimum value is selected from the table based on current engine operating conditions.

By contrast, changes in throttle opening take longer to affect engine output torque. The throttle actuator module 116 changes the throttle opening by adjusting the angle of the blade of the throttle valve 112. Therefore, once a new actuator value is received, there is a mechanical delay as the throttle valve 112 moves from its previous position to a new position based on the new target actuator value. In addition, air flow changes based on the throttle opening are subject to air transport delays in the intake manifold 110. Further, increased air flow in the intake manifold 110 is not realized as an increase in engine output torque until the cylinder 118 receives additional air in the next intake stroke, compresses the additional air, and commences the combustion stroke.

Using these actuators as an example, a torque reserve can be created by setting the throttle opening to a value that would allow the engine 102 to produce the predicted torque request 257. Meanwhile, the spark timing can be set based on the immediate torque request 258, which is less than the predicted torque request 257. Although the throttle opening generates enough air flow for the engine 102 to produce the predicted torque request 257, the spark timing is retarded (which reduces torque) based on the immediate torque request 258. The engine output torque will therefore be equal to the immediate torque request 258.

When additional torque is needed, the spark timing can be set based on the predicted torque request 257 or a torque between the predicted and immediate torque requests 257 and 258. By the following firing event, the spark actuator module 126 may return the spark timing to an optimum value, which allows the engine 102 to produce the full engine output torque achievable with the air flow already present. The engine output torque may therefore be quickly increased to the predicted torque request 257 without experiencing delays from changing the throttle opening.

The axle torque arbitration module 204 may output the predicted torque request 257 and the immediate torque request 258 to a propulsion torque arbitration module 206. In various implementations, the axle torque arbitration module 204 may output the predicted and immediate torque requests 257 and 258 to the hybrid optimization module 208.

The hybrid optimization module 208 may determine how much torque should be produced by the engine 102 and how much torque should be produced by the electric motor 198. The hybrid optimization module 208 then outputs modified predicted and immediate torque requests 259 and 260, respectively, to the propulsion torque arbitration module 206. In various implementations, the hybrid optimization module 208 may be implemented in the hybrid control module 196.

The predicted and immediate torque requests received by the propulsion torque arbitration module 206 are converted from an axle torque domain (torque at the wheels) into a propulsion torque domain (torque at the crankshaft). This conversion may occur before, after, as part of, or in place of the hybrid optimization module 208.

The propulsion torque arbitration module 206 arbitrates between propulsion torque requests 290, including the converted predicted and immediate torque requests. The propulsion torque arbitration module 206 generates an arbitrated predicted torque request 261 and an arbitrated immediate torque request 262. The arbitrated torque requests 261 and 262 may be generated by selecting a winning request from among received torque requests. Alternatively or additionally, the arbitrated torque requests may be generated by modifying one of the received requests based on another one or more of the received torque requests.

For example, the propulsion torque requests 290 may include torque reductions for engine over-speed protection, torque increases for stall prevention, and torque reductions requested by the transmission control module 194 to accommodate gear shifts. The propulsion torque requests 290 may also result from clutch fuel cutoff, which reduces the engine output torque when the driver depresses the clutch pedal in a manual transmission vehicle to prevent a flare (rapid rise) in engine speed.

The propulsion torque requests 290 may also include an engine shutoff request, which may be initiated when a critical fault is detected. For example only, critical faults may include detection of vehicle theft, a stuck starter motor, electronic throttle control problems, and unexpected torque increases. In various implementations, when an engine shutoff request is present, arbitration selects the engine shutoff request as the winning request. When the engine shutoff request is present, the propulsion torque arbitration module 206 may output zero as the arbitrated predicted and immediate torque requests 261 and 262.

In various implementations, an engine shutoff request may simply shut down the engine 102 separately from the arbitration process. The propulsion torque arbitration module 206 may still receive the engine shutoff request so that, for example, appropriate data can be fed back to other torque requestors. For example, all other torque requestors may be informed that they have lost arbitration.

The reserves/loads module 220 receives the arbitrated predicted and immediate torque requests 261 and 262. The reserves/loads module 220 may adjust the arbitrated predicted and immediate torque requests 261 and 262 to create a torque reserve and/or to compensate for one or more loads. The reserves/loads module 220 then outputs adjusted predicted and immediate torque requests 263 and 264 to the torque requesting module 224.

For example only, a catalyst light-off process or a cold start emissions reduction process may require retarded spark timing. The reserves/loads module 220 may therefore increase the adjusted predicted torque request 263 above the adjusted immediate torque request 264 to create retarded spark for the cold start emissions reduction process. In another example, the air/fuel ratio of the engine and/or the mass air flow may be directly varied, such as by diagnostic intrusive equivalence ratio testing and/or new engine purging. Before beginning these processes, a torque reserve may be created or increased to quickly offset decreases in engine output torque that result from leaning the air/fuel mixture during these processes.

The reserves/loads module 220 may also create or increase a torque reserve in anticipation of a future load, such as power steering pump operation or engagement of an air conditioning (A/C) compressor clutch. The reserve for engagement of the A/C compressor clutch may be created when the driver first requests air conditioning. The reserves/loads module 220 may increase the adjusted predicted torque request 263 while leaving the adjusted immediate torque request 264 unchanged to produce the torque reserve. Then, when the A/C compressor clutch engages, the reserves/loads module 220 may increase the adjusted immediate torque request 264 by the estimated load of the A/C compressor clutch.

The torque requesting module 224 receives the adjusted predicted and immediate torque requests 263 and 264. The torque requesting module 224 determines how the adjusted predicted and immediate torque requests 263 and 264 will be achieved. The torque requesting module 224 may be engine type specific. For example, the torque requesting module 224 may be implemented differently or use different control schemes for spark-ignition engines versus compression-ignition engines.

In various implementations, the torque requesting module 224 may define a boundary between modules that are common across all engine types and modules that are engine type specific. For example, engine types may include spark-ignition and compression-ignition. Modules prior to the torque requesting module 224, such as the propulsion torque arbitration module 206, may be common across engine types, while the torque requesting module 224 and subsequent modules may be engine type specific.

For example, in a spark-ignition engine, the torque requesting module 224 may vary the opening of the throttle valve 112 as a slow actuator that allows for a wide range of torque control. The torque requesting module 224 may disable cylinders using the cylinder actuator module 120, which also provides for a wide range of torque control, but may also be slow and may involve drivability and emissions concerns. The torque requesting module 224 may use spark timing as a fast actuator. However, spark timing may not provide as much range of torque control. In addition, the amount of torque control possible with changes in spark timing (referred to as spark reserve capacity) may vary as air flow changes.

In various implementations, the torque requesting module 224 may generate an air torque request 265 based on the adjusted predicted torque request 263. The air torque request 265 may be equal to the adjusted predicted torque request 263, setting air flow so that the adjusted predicted torque request 263 can be achieved by changes to other (e.g., fast) actuators.

Target actuator values for airflow controlling actuators may be determined based on the air torque request 265. For example only, the air control module 228 (see also FIG. 3) may determine a target manifold absolute pressure (MAP) 266, a target throttle opening (e.g., area) 267, a second target air per cylinder (APC2) 268, and a third target APC (APC3) 291 based on the air torque request 265. Determination of the second and third target APCs 268 and 291 are discussed further below.

The boost control module 248 may determine a target duty cycle 269 for the wastegate 162 based on the target MAP 266. While the target duty cycle 269 will be discussed, the boost control module 248 may determine another suitable value for controlling the wastegate 162. The phaser control module 252 may determine target intake and exhaust cam phaser angles 270 and 271 based on the second target APC 268. The EGR control module 253 determines a target EGR opening 292 based on the third target APC 291.

The torque requesting module 224 may also generate a spark torque request 272, a cylinder shut-off torque request 273, and a fuel torque request 274. The spark control module 232 may determine how much to retard the spark timing (which reduces engine output torque) from an optimum spark timing based on the spark torque request 272. For example only, a torque relationship may be inverted to solve for a desired spark timing 299. For a given torque request (T_(des)), the desired spark timing (S_(des)) 299 may be determined based on: S _(des) =f ⁻¹(T _(des),APC,I,E,AF,OT,#).  (0) This relationship may be embodied as an equation and/or as a lookup table. The air/fuel ratio (AF) may be the actual air/fuel ratio, as reported by the fuel control module 240. APC is an APC of the engine 102, I is an intake cam phaser angle, E is an exhaust cam phaser angle, OT is an oil temperature, and # is a number of activated cylinders. The spark control module 232 may also generate a target spark timing 275, as discussed further below in conjunction with FIG. 3.

When the spark timing is set to the optimum spark timing, the resulting torque may be as close to a minimum spark advance for best torque (MBT spark timing) as possible. Best torque refers to the maximum engine output torque that is generated for a given air flow as spark timing is advanced, while using fuel having an octane rating greater than a predetermined octane rating and using stoichiometric fueling. The spark timing at which this best torque occurs is referred to as an MBT spark timing. The optimum spark timing may differ slightly from MBT spark timing because of, for example, fuel quality (such as when lower octane fuel is used) and environmental factors. The engine output torque at the optimum spark timing may therefore be less than MBT.

The cylinder shut-off torque request 273 may be used by the cylinder control module 236 to determine a target number of cylinders to deactivate 276. The cylinder control module 236 may also instruct the fuel control module 240 to stop providing fuel for deactivated cylinders and may instruct the spark control module 232 to stop providing spark for deactivated cylinders. The spark control module 232 may stop providing spark to a cylinder once an fuel/air mixture that is already present in the cylinder has been combusted.

The fuel control module 240 may vary the amount of fuel provided to each cylinder based on the fuel torque request 274. More specifically, the fuel control module 240 may generate target fueling parameters 277 based on the fuel torque request 274. The target fueling parameters 277 may include, for example, target mass of fuel, target injection starting timing, and target number of fuel injections.

The air control module 228 generates the target MAP 266 based on a MAP estimated torque 278. The MAP estimated torque 278 corresponds to an estimated value of the present engine torque output determined based on a MAP 279 measured using the MAP sensor 184. The MAP torque estimation module 246 generates the MAP estimated torque 278 based on the MAP 279 and other measured engine operating parameters. For example, the MAP torque estimation module 246 generates the MAP estimated torque 278 using the relationship: T _(MAP) =f(MAP,RPM,S _(M) ,I _(M) ,E _(M),AF,OT,#),  (1) where T_(MAP) is the MAP estimated torque 278, MAP is the MAP 279, RPM is engine speed (rotational speed of the crankshaft), S_(M) is present spark timing 280 being used by the spark actuator module 126, I_(M) is a measured intake cam phaser angle 281, E_(M) is a measured exhaust cam phaser angle 282, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is oil temperature, and # is the present number of cylinders that are activated. The relationship may be embodied as an equation or as a look-up table.

The phaser control module 252 may provide the measured intake and exhaust cam phaser angles 281 and 282. The phaser control module 252 may generate the measured intake and exhaust cam phaser angles 281 and 282 based on previous values of the measured intake and exhaust cam phaser angles 281 and 282 and the target intake and exhaust cam phaser angles 270 and 271. For example, the phaser control module 252 may generate the measured intake and exhaust cam phaser angles 281 and 282 using the relationships: I _(M) =f(I _(T))+k*(I _(T) −I _(M) _(_) _(PREV)), and  (2) E _(M) =f(E _(T))+k*(E _(T) −E _(M) _(_) _(PREV)),  (3) where I_(M) is the measured intake cam phaser angle 281, I_(T) is the target intake cam phaser angle 270, k is a predetermined scalar/gain value, I_(M) _(_) _(PREV) is a previous value of the measured intake cam phaser angle 281, E_(M) is the measured exhaust cam phaser angle 282, E_(T) is the target exhaust cam phaser angle 271, k is a predetermined scalar/gain value, and E_(M) _(_) _(PREV) is a previous value of the measured exhaust cam phaser angle 282.

The air control module 228 generates various target values further based on a first APC estimated torque 283. The first APC estimated torque 283 corresponds to an estimated value of the present engine torque output determined based on a present APC 284. The present APC 284 is determined based on one or more measured parameters, such as the MAF, the MAP, and/or the IAT.

The APC torque estimation module 244 generates the first APC estimated torque 283 based on the present APC 284 and other measured engine operating parameters. For example, the APC torque estimation module 244 may generate the first APC estimated torque 283 using the relationship: T _(APC1) =f(APC_(P),RPM,S _(M) ,I _(M) ,E _(M),AF,OT,#),  (4) where T_(APC1) is the first APC estimated torque 283, APC_(P) is the present APC 284, RPM is the engine speed, S_(M) is the present spark timing 280 being used by the spark actuator module 126, I_(M) is the measured intake cam phaser angle 281, E_(M) is the measured exhaust cam phaser angle 282, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is the oil temperature, and # is the present number of cylinders that are activated. The relationship may be embodied as an equation or as a look-up table.

The APC torque estimation module 244 also generates a second APC estimated torque 298 based on the present APC 284 and the target intake and exhaust cam phaser angles 270 and 271. For example, the APC torque estimation module 244 may generate the second APC estimated torque 298 using the relationship: T _(APC2) =f(APC_(M),RPM,S _(M) ,I _(T) ,E _(T),AF,OT,#),  (5) where T_(APC2) is the second APC estimated torque 298, APC_(M) is the present APC 284, RPM is the engine speed, S_(M) is the present spark timing 280 being used by the spark actuator module 126, I_(T) is the target intake cam phaser angle 270, E_(T) is the target exhaust cam phaser angle 271, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is the oil temperature, and # is the present number of cylinders that are activated. The relationship may be embodied as an equation or as a look-up table.

The air control module 228 may output the target throttle opening 267 to the throttle actuator module 116. The throttle actuator module 116 regulates the throttle valve 112 to produce the target throttle opening 267. The air control module 228 outputs the target MAP 266 to the boost control module 248. The boost control module 248 controls the wastegate 162 based on the target MAP 266. The air control module 228 outputs the second target APC 268 to the phaser control module 252. Based on the second target APC 268 and the engine speed (and/or crankshaft position), the phaser control module 252 may control positions of the intake and/or exhaust cam phasers 148 and 150.

Referring now to FIG. 3, a functional block diagram of an example implementation of the air control module 228 is presented. A delay and rate limit module 302 applies one or more shaping actions to the air torque request 265 to produce a shaped air torque request 303. More specifically, the delay and rate limit module 302 stores the air torque request 265 for a delay period before outputting the stored air torque request as a delayed air torque request (not shown). The delay and rate limit module 302 may determine the delay period based on an EGR value (e.g., opening or mass flow rate) and/or the engine speed (RPM).

The delay and rate limit module 302 applies a rate limit to the delayed air torque request to produce the shaped air torque request 303. In other words, the delay and rate limit module 302 adjusts the shaped air torque request 303 toward the delayed air torque request by up to a maximum amount per predetermined period. The delay and rate limit module 302 may determine the maximum amount based on the EGR value and/or the engine speed. While delaying and rate limiting shaping actions have been described, one or more other shaping actions may also be performed.

A torque error module 304 determines a torque error 308 based on a difference between the shaped air torque request 303 and the first APC estimated torque 283. For example, the torque error module 304 may set the torque error 308 equal to the air torque request 265 minus the first APC estimated torque 283.

An adjustment module 312 generates a torque adjustment 316 based on the torque error 308. The adjustment module 312 may generate the torque adjustment 316, for example, using the relationship: T _(ADJ) =K _(P)*(T _(ERROR))+K _(I) *∫T _(ERROR) ¶t,  (6) where T_(ADJ) is the torque adjustment 316, K_(P) is a proportional gain, T_(ERROR) is the torque error 308, and K_(I) is an integral gain. K_(P)*(T_(ERROR)) will be referred to as a proportional (P) torque adjustment, and K_(I)*∫T_(ERROR)∂t is referred to as an integral (I) torque adjustment 318. The torque adjustment 316 is equal to the sum of the P torque adjustment and the I torque adjustment 318. In various implementations, another suitable type of closed-loop controller may be used to generate the torque adjustment 316 based on the torque error 308.

A target determination module 320 determines a target torque 324 based on the shaped air torque request 303 and the torque adjustment 316. For example, the target determination module 320 may set the target torque 324 equal to the shaped air torque request 303 plus the torque adjustment 316.

A target APC module 328 generates a first target APC (APC1) 329. FIG. 4 is a functional block diagram of an example implementation of the target APC module 328. Referring now to FIGS. 3 and 4, a first APC determination module 404 determines the first target APC 329 based on the target torque 324, the target spark timing 275, and selected intake and exhaust cam phaser angles 330 and 331. The first APC determination module 404 determines the first target APC 329 further based on the engine speed, the present air/fuel ratio, the oil temperature, and the present number of active cylinders. Relationship (4) provided above may be inverted and solved to determine the first target APC 329. For example, the first APC determination module 404 may generate the first target APC 329 using the relationship: APC_(T) _(_) ₁ =T ⁻¹(T _(T),RPM,S _(T) ,I _(SEL) ,E _(SEL),AF,OT,#),  (7) where APC_(T) _(_) ₁ is the first target APC 329, T_(T) is the target torque 324, RPM is engine speed, S_(T) is the target spark timing 275, I_(SEL) is the selected intake cam phaser angle 330, E_(SEL) is the selected exhaust cam phaser angle 331, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is the oil temperature, # is the present number of cylinders that are activated, and T⁻¹ denotes inversion of relationship (4) above used to relate the present APC 284 to the first APC estimated torque 283. In various implementations, the target intake and exhaust cam phaser angles 270 and 271 may be used in place of the selected intake and exhaust cam phaser angles 330 and 331. This relationship may be embodied as an equation or as a look-up table. Generation of the selected intake and exhaust cam phaser angles 330 and 331 is discussed further below.

The target APC module 328 also generates the second and third target APCs 268 and 291. A second APC determination module 408 determines the second target APC 268 based on a phaser target torque 412, the target spark timing 275, and selected intake and exhaust cam phaser angles 330 and 331. The second APC determination module 408 determines the second target APC 268 further based on the engine speed, the present air/fuel ratio, the oil temperature, and the present number of active cylinders. Relationship (4) provided above may be inverted and solved to determine the second target APC 268. For example, the second APC determination module 408 may generate the second target APC 268 using the relationship: APC_(T) _(_) ₂ =T ⁻¹(T _(PTT),RPM,S _(T) ,I _(SEL) ,E _(SEL),AF,OT,#),  (8) where APC_(T) _(_) ₂ is the second target APC 268, T_(PTT) is the phaser target torque 412, RPM is engine speed, S_(T) is the target spark timing 275, I_(SEL) is the selected intake cam phaser angle 330, E_(SEL) is the selected exhaust cam phaser angle 331, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is the oil temperature, # is the present number of cylinders that are activated, and T⁻¹ denotes inversion of relationship (4) above used to relate the present APC 284 to the first APC estimated torque 283. In various implementations, the target intake and exhaust cam phaser angles 270 and 271 may be used in place of the selected intake and exhaust cam phaser angles 330 and 331. This relationship may be embodied as an equation or as a look-up table.

A target phaser torque module 416 determines the phaser target torque 412 based on the shaped air torque request 303 and a phaser torque adjustment 420. For example, the target phaser torque module 416 may set the phaser target torque 412 equal to the phaser torque adjustment 420 plus the shaped air torque request 303.

A first selection module 424 sets the phaser torque adjustment 420 to one of zero and the I torque adjustment 318 based on a first selection signal 428. For example, the first selection module 424 may set the phaser torque adjustment 420 to zero when the first selection signal 428 is in a first state and set the phaser torque adjustment 420 to the I torque adjustment 318 when the first selection signal 428 is in a second state. The state of the first selection signal 428 may be set, for example, during the calibration stage of vehicle design. For example, the first selection signal 428 may be set to the first state when the phaser control module 252 can change the target intake and/or exhaust phaser angles 270 and 271 at greater than a predetermined rate. The first selection signal 428 may be set to the second state when the phaser control module 252 is limited to changing the target intake and/or exhaust phaser angles 270 and 271 at less than the predetermined rate.

As stated above, the phaser control module 252 (FIG. 2) generates the target intake and exhaust cam phaser angles 270 and 271 based on the second target APC 268. More specifically, the phaser control module 252 may determine the target intake and exhaust cam phaser angles 270 and 271 based on the second target APC 268 and the engine speed. For example, the phaser control module 252 may generate the target intake and exhaust cam phaser angles 270 and 271 using the relationships: I _(T) =f(RPM,APC_(T) _(_) ₂); and  (9) E _(T) =f(RPM,APC_(T) _(_) ₂),  (10) where I_(T) is the target intake cam phaser angle 270, RPM is the engine speed, APC_(T) _(_) ₂ is the second target APC 268, and E_(T) is the target exhaust cam phaser angle 271. These relationships may be embodied as equations or as look-up tables. The phaser actuator module 158 controls the intake and exhaust cam phasers 148 and 150 based on the target intake and exhaust cam phaser angles 270 and 271, respectively.

A third APC determination module 432 determines the third target APC 291 based on an EGR target torque 436, the target spark timing 275, and selected intake and exhaust cam phaser angles 330 and 331. The third APC determination module 432 determines the third target APC 291 further based on the engine speed, the present air/fuel ratio, the oil temperature, and the present number of active cylinders. Relationship (4) provided above may be inverted and solved to determine the third target APC 291. For example, the third APC determination module 432 may generate the third target APC 291 using the relationship: APC_(T) _(_) ₃ =T ⁻¹(T _(EGRT),RPM,S _(T) ,I _(SEL) ,E _(SEL),AF,OT,#),  (11) where APC_(T) _(_) ₃ is the third target APC 291, T_(EGRT) is the EGR target torque 436, RPM is engine speed, S_(T) is the target spark timing 275, I_(SEL) is the selected intake cam phaser angle 330, E_(SEL) is the selected exhaust cam phaser angle 331, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is the oil temperature, # is the present number of cylinders that are activated, and T⁻¹ denotes inversion of relationship (4) above used to relate the present APC 284 to the first APC estimated torque 283. In various implementations, the target intake and exhaust cam phaser angles 270 and 271 may be used in place of the selected intake and exhaust cam phaser angles 330 and 331. This relationship may be embodied as an equation or as a look-up table.

A target EGR torque module 440 determines the EGR target torque 436 based on the air torque request 265 and an EGR torque adjustment 444. For example, the target EGR torque module 440 may set the EGR target torque 436 equal to the EGR torque adjustment 444 plus the air torque request 265.

A second selection module 448 sets the EGR torque adjustment 444 to one of zero and the I torque adjustment 318 based on a second selection signal 452. For example, the second selection module 448 may set the EGR torque adjustment 444 to zero when the second selection signal 452 is in a first state and set the EGR torque adjustment 444 to the I torque adjustment 318 when the second selection signal 452 is in a second state. The state of the second selection signal 452 may be set, for example, during the calibration stage of vehicle design. For example, the second selection signal 452 may be set to the first state when the EGR control module 253 can change the target EGR opening 292 at greater than a predetermined rate. The second selection signal 452 may be set to the second state when the EGR control module 253 is limited to changing the target EGR opening 292 at less than the predetermined rate.

As stated above, the EGR control module 253 (FIG. 2) generates the target EGR opening 292 based on the third target APC 291. More specifically, the EGR control module 253 may determine a target EGR mass flow rate based on the third target APC 291 and the engine speed. The EGR control module 253 may generate the target EGR mass flow rate, for example, using the relationship: M _(EGRT) =f(RPM,APC_(T) _(_) ₃),  (12) where M_(EGRT) is the mass EGR flow rate, RPM is the engine speed, and APC_(T) _(_) ₃ is the third target APC 291. This relationship may be embodied as an equation or as a look-up table.

The EGR control module 253 may determine the target EGR opening 292 based on the target EGR mass flow rate. The EGR control module 253 determines the target EGR opening 292 further based on the target MAP 266, an exhaust temperature, and an exhaust pressure. For example, the EGR control module 253 may determine the target EGR opening 292 using the relationship:

$\begin{matrix} {{{AREA}_{EGRT} = \frac{M_{EGRT}*\sqrt{R_{GAS}*T_{exh}}}{P_{exh}*{\Phi\left( \frac{{MAP}_{T}}{P_{exh}} \right)}}},} & (13) \end{matrix}$ where AREA_(EGRT) is the target EGR opening 292, M_(EGRT) is the target EGR mass flow rate, MAP_(T) is the target MAP 266, R_(GAS) is the ideal gas constant, T_(exh) is an exhaust temperature, P_(exh) is an exhaust pressure, and φ represents an air density function. As stated above, the EGR actuator module 172 controls the EGR valve 170 based on the target EGR opening 292.

Referring back to FIG. 3, a target MAP module 332 generates the target MAP 266 based on the target torque 324, the target spark timing 275, and the selected intake and exhaust cam phaser angles 330 and 331. The target MAP module 332 generates the target MAP 266 further based on the engine speed, the present air/fuel ratio, the oil temperature, the present number of active cylinders, and an estimated torque difference 336. Relationship (1) provided above may be inverted and solved to determine the target MAP 266. For example, the target MAP module 332 may generate the target MAP 266 using the relationship: MAP_(T) =T ⁻¹((T _(T) +f(T _(EST) _(_) _(DIFF))),RPM,S _(T) ,I _(SEL) ,E _(SEL),AF,OT,#),  (14) where MAP_(T) is the target MAP 266, T_(T) is the target torque 324, T_(EST) _(_) _(DIFF) is the estimated torque difference 336, RPM is the engine speed, S_(T) is the target spark timing 275, I_(SEL) is the selected intake cam phaser angle 330, E_(SEL) is the selected exhaust cam phaser angle 331, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is the oil temperature, # is the present number of cylinders that are activated, and T⁻¹ denotes inversion of relationship (1) above used to relate the MAP 279 to the MAP estimated torque 278. In various implementations, the target intake and exhaust cam phaser angles 270 and 271 may be used in place of the selected intake and exhaust cam phaser angles 330 and 331. This relationship may be embodied as an equation or as a look-up table. As noted above, generation of the selected intake and exhaust cam phaser angles 330 and 331 is discussed further below.

A difference module 340 determines the estimated torque difference 336. The difference module 340 determines the estimated torque difference 336 based on a difference between the MAP estimated torque 278 and the first APC estimated torque 283. The difference module 340 may also apply a filter to the difference between the MAP estimated torque 278 and the first APC estimated torque 283, such as a low pass filter, and output the filtered difference as the estimated torque difference 336.

As stated above, the boost control module 248 may generate the target duty cycle 269 based on the target MAP 266. The boost actuator module 164 controls the wastegate 162 (and therefore the turbocharger) based on the target duty cycle 269.

A first target MAF module 344 generates a first target MAF 348 into the engine 102 based on the first target APC 329. The first target MAF module 344 generates the first target MAF 348 further based on the engine speed and the total number of cylinders of the engine 102. For example, the first target MAF module 344 may generate the first target MAF 348 using the relationship:

$\begin{matrix} {{{MAF}_{{T\_}1} = \frac{{APC}_{{T\_}1}*{RPM}}{k_{CYL}}},} & (15) \end{matrix}$ where MAF_(T) _(_) ₁ is the first target MAF 348, APC_(T) _(_) ₁ is the first target APC 329, RPM is the engine speed, and k_(CYL) is a predetermined value set based on the total number of cylinders of the engine 102. For example only, k_(CYL) may be approximately 15 for an 8-cylinder engine and approximately 30 for a 4-cylinder engine.

Airflow into the engine 102 may vary when one or more cylinders are transitioned from being activated to being deactivated and when one or more cylinders are transitioned from being deactivated to being activated. Dynamics for airflow into the engine 102 can be represented using the following first-order relationships: {dot over (x)}=−ax+bu; and  (16) y=cx,  (17) where u is a MAF, x is a MAP, {dot over (x)} is a rate of change of MAP, and y is an APC. The values of a, b, and c can be represented as follows:

$\begin{matrix} {{a = \frac{\eta*V_{D}*{FF}*{RPM}}{120*V_{MAN}}},} & (18) \\ {{b = \frac{R*T_{MAN}}{V_{MAN}}},{and}} & (19) \\ {{c = \frac{\eta*V_{D}}{R*T_{MAN}*{Cyls}}},} & (20) \end{matrix}$ where η is a volumetric efficiency of the engine 102, V_(D) is a displacement volume of the engine 102, FF is a firing fraction of the engine 102, RPM is the engine speed, V_(MAN) is a volume of the intake manifold 110, R is the Ideal Gas Constant, T_(MAN) is a temperature of air within the intake manifold 110, and Cyls is the total number of cylinders of the engine 102. The firing fraction of the engine 102 is a value between 0 and 1 that corresponds to a ratio of the number of activated cylinders to the total number of cylinders of the engine 102.

An example target for the APC to follow for cylinder activation and deactivation transitions may be expressed as follows:

$\begin{matrix} {{y_{ref} = {{\frac{1}{{T_{ref}*s} + 1}*r} = {\frac{b_{m}}{s + a_{m}}*r}}},} & (21) \end{matrix}$ where T_(Ref) is a target response time constant, r is a reference input to be followed, and a_(m) and b_(m) are equal to 1/T_(Ref). For example only, the value of T_(Ref) for a desired change of 90% within 80 milliseconds (ms) is approximately 0.0364. While example first-order examples have been provided, second or higher order relationships may be used. The target response time constant may be a fixed value or a variable value. If a variable value, the target response time constant may be determined based on, for example, the engine speed, engine load, the temperature of air in the intake manifold 110, and/or one or more other parameters.

A second target MAF module 460 determines a second target MAF 464 into the engine 102 based on relationships (16)-(21). More specifically, the second target MAF module 460 determines the second target MAF 464 based on the first target APC 329, the present APC 284, the firing fraction, the temperature within the intake manifold 110, the volumetric efficiency of the engine, and the target response time constant (T_(Ref)). For example, the second target MAF module 460 may determine the second target MAF 464 using the relationship:

$\begin{matrix} {{{MAF}_{{T\_}2} = {{\frac{b_{m}}{b*c}*{APC}_{{T\_}1}} - {\frac{\left( {a_{m} - a} \right)}{b*c}*{APC}_{P}}}},} & (22) \end{matrix}$ where MAF_(T) _(_) ₂ is the second target MAF 464, APC_(T) _(_) ₁ is the first target APC 329, and APC_(P) is the present APC 284. a, a_(m), b, b_(m), and c are described above.

A third selection module 468 sets a selected target MAF 472 to one of the first target MAF 348 and the second target MAF 464 based on a third selection signal 476. For example, the third selection module 468 may set the selected target MAF 472 to the first target MAF 348 when the third selection signal 476 is in a first state and set the selected target MAF 472 to the second target MAF 464 when the third selection signal 476 is in a second state.

The cylinder control module 236 may set the state of the third selection signal 476. For example, the cylinder control module 236 may set the third selection signal 476 to the second state a predetermined period before transitioning one or more cylinders from being activated to deactivated and a predetermined period before transitioning one or more cylinders from being deactivated to activated. The cylinder control module 236 may then maintain the third selection signal in the second state until that transition is complete. When the transition is complete, the cylinder control module 236 may transition the third selection signal from the second state to the first state. The cylinder control module 236 may maintain the third selection signal in the first state until one or more cylinders are to be transitioned from activated to deactivated or vice versa.

In this manner, the second target MAF 464 will be used for a predetermined period before and while one or more cylinders are transitioned from activated to deactivated or from deactivated to activated. The first target MAF 348 may be used when the number of activated and deactivated cylinders is not changing.

When the third selection signal 476 transitions from the first state to the second state or vice versa, the third selection module 468 may rate limit changes in the selected target MAF 472. For example, when the third selection signal 476 transitions from the first state to the second state, the third selection module 468 may adjust the selected target MAF 472 toward the second target MAF 464 by up to a predetermined amount every predetermined period. When the third selection signal 476 transitions from the second state to the first state, the third selection module 468 may adjust the selected target MAF 472 toward the first target MAF 348 by up to a predetermined amount every predetermined period. In various implementations, the first target MAF module 344 and the third selection module 468 may be omitted, and the second target MAF 464 may be used at all times.

A throttle control module 352 determines the target throttle opening 267 for the throttle valve 112 based on the selected target MAF 472. The throttle control module 352 determines the target throttle opening 267 further based on the target MAP 266, an air temperature, and a barometric pressure. For example, the throttle control module 352 may determine the target throttle opening 267 using the relationship:

$\begin{matrix} {{{AREA}_{T} = \frac{{MAF}_{T\_ S}*\sqrt{R_{GAS}*T}}{B*{\Phi\left( \frac{{MAP}_{T}}{B} \right)}}},} & (23) \end{matrix}$ where AREA_(T) is the target throttle opening 267, MAF_(T) _(_) _(S) is the selected target MAF 472, MAP_(T) is the target MAP 266, R_(GAS) is the ideal gas constant, T is the air temperature (e.g., ambient or intake), B is the pressure upstream of the throttle valve 112, and φ represents an air density function. As stated above, the throttle actuator module 116 controls the throttle valve 112 based on the target throttle opening 267.

Referring back to the target spark timing 275, the torque relationship (4) provided above may be inverted to solve for a spark APC (not shown). For example, the spark control module 232 may determine the spark APC using the relationship: APC_(SPARK) =T ⁻¹(T _(SPARK),RPM,S _(M) ,I _(T) ,E _(T),AF,OT,#)  (24) where APC_(SPARK) is the spark APC, T_(SPARK) is the spark torque request 272, RPM is the engine speed, S_(M) is the present spark timing 280 being used by the spark actuator module 126, I_(T) is the target intake cam phaser angle 270, E_(T) is the target exhaust cam phaser angle 271, AF is the present air/fuel ratio being used by the fuel actuator module 124, OT is the oil temperature, # is the present number of cylinders that are activated, and T⁻¹ denotes inversion of relationship (4) above used to relate the present APC 284 to the first APC estimated torque 283. This relationship may be embodied as an equation or as a look-up table.

The spark control module 232 may determine the target spark timing 275 based on the spark APC and the engine speed. For example, the spark control module 232 may determine the target spark timing 275 using the relationship: S _(T) =f(APC_(SPARK),RPM),  (25) where S_(T) is the target spark timing 275, APC_(SPARK) is the spark APC, and RPM is the engine speed.

A selecting module 356 sets the selected intake and exhaust cam phaser angles 330 and 331 based on either: the measured intake and exhaust cam phaser angles 281 and 282; or the target intake and exhaust cam phaser angles 270 and 271, respectively. More specifically, the selecting module 356: sets the selected intake cam phaser angle 330 based on either the measured intake cam phaser angle 281 or the target intake cam phaser angle 270; and sets the selected exhaust cam phaser angle 331 based on either the measured exhaust cam phaser angle 282 or the target exhaust cam phaser angle 271.

A selection signal 360 controls whether the selecting module 356 sets the selected intake and exhaust cam phaser angles 330 and 331 based on the measured intake and exhaust cam phaser angles 281 and 282 or based on the target intake and exhaust cam phaser angles 270 and 271. For example, the selecting module 356 may set the selected intake and exhaust cam phaser angles 330 and 331 based on the target intake and exhaust cam phaser angles 270 and 271 when the selection signal 360 is in a first state. When the selection signal 360 is in a second state, the selecting module 356 may set the selected intake and exhaust cam phaser angles 330 and 331 based on the measured intake and exhaust cam phaser angles 281 and 282.

When the selection signal 360 transitions from the first state to the second state or vice versa, the selecting module 356 may rate limit changes in the selected intake and exhaust cam phaser angles 330 and 331. For example, when the selection signal 360 transitions from the first state to the second state, the selecting module 356 may adjust the selected intake and exhaust cam phaser angles 330 and 331 toward the measured intake and exhaust cam phaser angles 281 and 282 by up to a first predetermined amount every predetermined period. When the selection signal 360 transitions from the second state to the first state, the selecting module 356 may adjust the selected intake and exhaust cam phaser angles 330 and 331 toward the target intake and exhaust cam phaser angles 270 and 271 by up to a second predetermined amount every predetermined period. The first and second predetermined amounts may be the same or different.

A selection generation module 364 generates the selection signal 360. The selection generation module 364 sums an APC torque difference 365 over a predetermined period (or a predetermined number of samples) to determine a cumulative difference. A second difference module 366 determines the APC torque difference 365. The second difference module 366 determines the APC torque difference 365 based on a difference between the first APC estimated torque 283 and the second APC estimated torque 298. The second difference module 366 may also apply a filter to the difference between the first APC estimated torque 283 and the second APC estimated torque 298, such as a low pass filter, and output the filtered difference as the APC torque difference 365.

The selection generation module 364 generates the selection signal 360 based on the cumulative difference. More specifically, the selection generation module 364 sets the selection signal 360 to the first state when the cumulative difference is less than a predetermined value. When the cumulative difference is greater than the predetermined value, the selection generation module 364 may set the selection signal 360 to the second state.

In this manner the selecting module 356 sets the selected intake and exhaust cam phaser angles 330 and 331 based on the target intake and exhaust cam phaser angles 270 and 271 when the cumulative difference is less than the predetermined value. When the cumulative difference is greater than the predetermined value, the selecting module 356 may set the selected intake and exhaust cam phaser angles 330 and 331 based on the measured intake and exhaust cam phaser angles 281 and 282. This may ensure that use of the target intake and exhaust cam phaser angles 270 and 271 is limited to times when the target intake and exhaust cam phaser angles 270 and 271 are accurate, as indicated by the cumulative difference being less than the predetermined value.

Referring now to FIG. 5, a flowchart depicting an example method of controlling the throttle valve 112 is presented. Control may begin with 504 where the torque requesting module 224 generates the air torque request 265. The delay and rate limit module 302 updates the shaped air torque request 303 at 508. The delay and rate limit module 302 receives the air torque request 265 and stores the air torque request 265 for the delay period. The delay and rate limit module 302 adjusts the shaped air torque request 303 toward a stored air torque request by up to the predetermined amount. The delay period and the predetermined amount may be determined, for example, based on the EGR value and/or the engine speed.

The torque error module 304 generates the torque error 308 at 512. The torque error module 304 determines the torque error 308 based on a difference between the shaped air torque request 303 and the first APC estimated torque 283. The adjustment module 312 determines the P torque adjustment, the I torque adjustment 318, and the torque adjustment 316 at 516 based on the torque error 308. As discussed above in conjunction with relationship (6), the adjustment module 312 may determine the P torque adjustment based on a product of the proportional gain (KP) and the torque error 308 and determine the I torque adjustment 318 based on a product of the torque error 308 and an integral gain (KI). The adjustment module 312 may set the torque adjustment 316 equal to the I torque adjustment 318 plus the P torque adjustment.

At 520, the target determination module 320 generates the target torque 324. The target determination module 320 determines the target torque 324 based on the torque adjustment 316 and the shaped air torque request 303, as discussed above. At 524, the first APC determination module 404 determines the first target APC 329, the first target MAF module 344 determines the first target MAF 348, the second target MAF module 460 determines the second target MAF 464, and the target MAP module 332 determines the target MAP 266.

The first APC determination module 404 determines the first target APC 329 based on the target torque 324, as discussed above. The first target MAF module 344 determines the first target MAF 348 based on the first target APC 329, as discussed above. The target MAP module 332 determines the target MAP 266 based on the target torque 324, as discussed above. The second target MAF module 460 determines the second target MAF 464 based on the first target APC 329, the present APC 284, the firing fraction, the temperature within the intake manifold 110, the volumetric efficiency of the engine 102, and the target response time constant (TRef), as discussed above.

At 528, the cylinder control module 236 may determine whether one or more cylinders should be transitioned from activated to deactivated or from deactivated to activated. For example, the cylinder control module 236 may activate one or more cylinders when a torque request increases and may deactivate one or more cylinders when a torque request decreases. If 528 is true, the third selection module 468 may set the selected target MAF 472 to or based on the second target MAF 464 at 532, and control continues with 540. If 528 is false, the third selection module 468 may set the selected target MAF 472 to or based on the first target MAF at 536, and control continues with 540.

At 540, the throttle control module 352 generates the target throttle opening 267 based on the selected target MAF 472 and the target MAP 266, as discussed above. In various implementations, 528-536 may be omitted, and the throttle control module 352 may generate the target throttle opening 267 based on the second target MAF 464 and the target MAP 266. At 544, the throttle actuator module 116 selectively adjusts the throttle valve 112 based on the target throttle opening 267. Control may then end. While control is shown and discussed as ending, FIG. 5 may be illustrative of one control loop, and control loops may be executed at a predetermined rate.

The foregoing description is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses. The broad teachings of the disclosure can be implemented in a variety of forms. Therefore, while this disclosure includes particular examples, the true scope of the disclosure should not be so limited since other modifications will become apparent upon a study of the drawings, the specification, and the following claims. As used herein, the phrase at least one of A, B, and C should be construed to mean a logical (A or B or C), using a non-exclusive logical OR. It should be understood that one or more steps within a method may be executed in different order (or concurrently) without altering the principles of the present disclosure.

In this application, including the definitions below, the term module may be replaced with the term circuit. The term module may refer to, be part of, or include an Application Specific Integrated Circuit (ASIC); a digital, analog, or mixed analog/digital discrete circuit; a digital, analog, or mixed analog/digital integrated circuit; a combinational logic circuit; a field programmable gate array (FPGA); a processor (shared, dedicated, or group) that executes code; memory (shared, dedicated, or group) that stores code executed by a processor; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system-on-chip.

The term code, as used above, may include software, firmware, and/or microcode, and may refer to programs, routines, functions, classes, and/or objects. The term shared processor encompasses a single processor that executes some or all code from multiple modules. The term group processor encompasses a processor that, in combination with additional processors, executes some or all code from one or more modules. The term shared memory encompasses a single memory that stores some or all code from multiple modules. The term group memory encompasses a memory that, in combination with additional memories, stores some or all code from one or more modules. The term memory may be a subset of the term computer-readable medium. The term computer-readable medium does not encompass transitory electrical and electromagnetic signals propagating through a medium, and may therefore be considered tangible and non-transitory. Non-limiting examples of a non-transitory tangible computer readable medium include nonvolatile memory, volatile memory, magnetic storage, and optical storage.

The apparatuses and methods described in this application may be partially or fully implemented by one or more computer programs executed by one or more processors. The computer programs include processor-executable instructions that are stored on at least one non-transitory tangible computer readable medium. The computer programs may also include and/or rely on stored data. 

What is claimed is:
 1. An engine control system for a vehicle, comprising: a target torque circuit that determines a target torque output of an engine based on at least one driver input; a target air per cylinder (APC) circuit that determines a target APC for the engine based on the target torque; a first target mass airflow (MAF) circuit that determines a first target MAF through a throttle valve of the engine based on a first set of parameters including the target APC, an APC of the engine, a temperature of air within an intake manifold of the engine, a volumetric efficiency of the engine, a predetermined response time value, a number of activated cylinders of the engine, and a total number of cylinders of the engine; a second target MAF circuit that determines a second target MAF through the throttle valve based on a second set of parameters including the target APC, an engine speed, and the total number of cylinders of the engine, wherein at least one parameter of the first set of parameters is not included in the second set of parameters, and wherein at least one parameter of the second set of parameters is not included in the first set of parameters; a selection circuit that: selects the first target MAF as a selected target MAF while at least one cylinder of the engine is transitioned (a) from activated to deactivated or (b) from deactivated to activated; and selects the second target MAF as the selected target MAF when both (a) zero cylinders of the engine are being transitioned from activated to deactivated and (b) zero cylinders of the engine are being transitioned from deactivated to activated; and a throttle control circuit that determines a target throttle opening based on the selected target MAF and that controls opening of the throttle valve based on the target throttle opening.
 2. The engine control system of claim 1 wherein the target MAF circuit determines the first target MAF using one of a function and a mapping that relates the target APC, the number of activated cylinders, the total number of cylinders, the APC, the temperature, the volumetric efficiency, and the predetermined response time value to the first target MAF.
 3. The engine control system of claim 1 wherein the selection circuit selects the first target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from activated to deactivated.
 4. The engine control system of claim 1 wherein the selection circuit selects the first target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from deactivated to activated.
 5. The engine control system of claim 1 wherein the throttle control circuit determines the target throttle opening further based on a target intake manifold pressure.
 6. An engine control method comprising: determining a target torque output of an engine based on at least one driver input; determining a target air per cylinder (APC) for the engine based on the target torque; determining a first target mass airflow (MAF) through a throttle valve of the engine based on a first set of parameters including the target APC, an APC of the engine, a temperature of air within an intake manifold of the engine, a volumetric efficiency of the engine, a predetermined response time value, a number of activated cylinders of the engine, and a total number of cylinders of the engine; determining a second target MAF through the throttle valve based on a second set of parameters including the target APC, an engine speed, and the total number of cylinders of the engine, wherein at least one parameter of the first set of parameters is not included in the second set of parameters, and wherein at least one parameter of the second set of parameters is not included in the first set of parameters; selecting the first target MAF as a selected target MAF while at least one cylinder of the engine is transitioned (a) from activated to deactivated or (b) from deactivated to activated; selecting the second target MAF as the selected target MAF when both (a) zero cylinders of the engine are being transitioned from activated to deactivated and (b) zero cylinders of the engine are being transitioned from deactivated to activated; determining a target throttle opening based on the selected target MAF; and controlling opening of the throttle valve based on the target throttle opening.
 7. The engine control method of claim 6 further comprising determining the first target MAF using one of a function and a mapping that relates the target APC, the number of activated cylinders, the total number of cylinders, the APC, the temperature, the volumetric efficiency, and the predetermined response time value to the first target MAF.
 8. The engine control method of claim 6 further comprising selecting the first target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from activated to deactivated.
 9. The engine control method of claim 6 further comprising selecting the first target MAF for a predetermined period before the at least one cylinder of the engine is transitioned from deactivated to activated.
 10. The engine control method of claim 6 further comprising determining the target throttle opening further based on a target intake manifold pressure. 